import {
	getToken,
	removeToken
} from './auth';
import env from './env';

function service(options = {}) {
	options.timeout = 600000
	options.url = `${env.baseUrl}${options.url}`;
	let bor = options.bor ? true : false
	// 判断本地是否存在token，如果存在则带上请求头
	if (getToken()) {
		options.header = {
			'Content-Type': 'application/json',
			'Authorization': `Bearer ${getToken()}` // 这里是token(可自行修改)
		};
	}

	return new Promise((resolved, rejected) => {
		options.success = (res) => {
			// 如果请求回来的状态码不是200则执行以下操作
			if (res.data.code !== 200) {
				// 非成功状态码弹窗
				// 登陆失效
				if (res.data.code === 401) {
					uni.showToast({
						icon: 'none',
						duration: 3000,
						title: `登录过期`
					});
					// 清除本地token
					removeToken()
					// 关闭所有页面返回到登录页
					rejected(res.data)
					//第一步获取微信code 1个code只允许使用一次
					// url 是当前链接 encodeURIComponent字符串作为 URI 组件进行编码 来做可识别的回调链接
					// let uri = 'https://qlpcjd.whutyiban.com/%23/pages/ReportCard/ReportCard'
					// let uri = 'https://app.report.luomausedcar.com/%23/pages/index/index'
					// window.location.href = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=" +
					// 	"wxea537745cf273236" +
					// 	"&redirect_uri=" +
					// 	uri +
					// 	"&response_type=code&scope=snsapi_base&state=state&wechat_redirect&connect_redirect=1#wechat_redirect";
				}else{
					uni.showToast({
						icon: 'none',
						duration: 3000,
						title: `${res.data.msg}`
					});
				}
				// else if (res.data.code === 500) {
				// 	uni.showToast({
				// 		icon: 'none',
				// 		duration: 3000,
				// 		title: res.data.msg,
				// 		fail: (err) => {
				// 			console.log('err', err);
				// 		}
				// 	});
				// }
				// 返回错误信息
				rejected(res)
			} else {
				// 请求回来的状态码为200则返回内容
				resolved(res.data)
			}
		};
		options.fail = (err) => {
			// 请求失败弹窗
			if (bor) {
				uni.showToast({
					icon: 'none',
					duration: 3000,
					title: err.msg
				});
			}
			console.log(err);
			rejected(err);
		};
		uni.request(options);
	});
}

export default service;